<?

require_once 'PHPUnit/Framework.php';
require_once 'conexao.php';

class TestBancos extends PHPUnit_Framework_TestCase
{
	/**
	* Executa o teste
	*/
	public static function main()
	{
		require_once 'PHPUnit/TextUI/TestRunner.php';
        $suite  = new PHPUnit_Framework_TestSuite(__CLASS__);
        $result = PHPUnit_TextUI_TestRunner::run($suite);
	}

	public function setUp()
	{
		$this->bancos = Qi_Db::bancos();
	}

	public function test_eh_array()
	{
		$this->assertTrue(is_array($this->bancos));
	}

	public function test_not_empty()
	{
		$this->assertFalse(empty($this->bancos));
	}

	public function test_chaves_sao_iguais_valores()
	{
		$this->assertSame(array_keys($this->bancos), array_values($this->bancos));
	}

	public function test_selecionar_banco()
	{
		$this->setExpectedException('DomainException');
		Qi_Db::selecionar_banco("mysql2");
	}
}

function sou_o_arquivo_executado()
{
	$included_files = get_included_files();
	$boot = realpath($included_files[0]);
	return realpath(__FILE__) === $boot;
}

if (sou_o_arquivo_executado())
	TestBancos::main();

?>